package com.zyh.scs.admin.api.vo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.zyh.scs.common.excel.annotation.ExcelLine;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * @author hwh
 * @ClassName: 交易流水ExcelVO模版类$
 * @Description: $
 * @Date $
 * @Version 1.0
 */
@Data
@ColumnWidth(30)
public class UserTransactionExcelVO implements Serializable {

    /**
     * 导入时候回显行号
     */
    @ExcelLine
    @ExcelIgnore
    private Long lineNum;

    /**
     * 序号
     */
    @ExcelProperty("序号")
    private Integer index;

    /**
     * 流水号
     */
    @ExcelProperty("流水号")
    @Schema(description = "流水号")
    private String rechargeStream;

    /**
     * 第三方交易流水号
     */
    @Schema(description = "第三方交易流水号")
    @ExcelProperty("第三方交易流水号")
    private String thirdRechargeStream;

    /**
     * guid
     */
    @Schema(description = "guid")
    @ExcelProperty("guid")
    private String guid;

    /**
     * 用户姓名
     */
    @ExcelProperty("用户姓名")
    @Schema(description = "用户姓名")
    private String username;

    /**
     * 工号
     */
    @ExcelProperty("工号")
    @Schema(description = "工号")
    private String userJobNumber;

    /**
     * 手机号
     */
    @ExcelProperty("手机号")
    @Schema(description = "手机号")
    private String phone;

    /**
     * 交易金额
     */
    @ExcelProperty("交易金额(元)")
    @Schema(description = "交易金额")
    private BigDecimal transactionNumber;

    /**
     * 餐补账户账户金额元
     */
    @Schema(description = "餐补账户账户金额元")
    @ExcelProperty("交易后餐补账户余额(元)")
    private BigDecimal cardAccount;

    /**
     * 现金账户金额元
     */
    @Schema(description = "现金账户金额元")
    @ExcelProperty("交易后现金账户余额(元)")
    private BigDecimal cashAccount;

    /**
     * 账户类型 1餐补账户、 2现金
     */
    @Schema(description = "账户类型 1餐补账户、 2现金")
    @ExcelProperty("支出账户")
    private String accountType;

    /**
     * 商户号
     */
    @Schema(description = "商户号")
    @ExcelProperty("商户号")
    private String merchantNumber;

    /**
     * 交易类型
     */
    @ExcelProperty("交易类型")
    @Schema(description = "交易类型 1满客宝充值 2满客宝消费 3满客宝退款 4京东锦礼消费 5京东锦礼退款 6后台充值")
    private String transactionType;

    /**
     * 创建时间
     */
    @ExcelProperty("创建时间")
    @Schema(description = "创建时间")
    private LocalDateTime createTime;

    /**
     * 交易时间
     */
    @ExcelProperty("交易时间")
    @Schema(description = "交易时间")
    private LocalDateTime transactionTime;

    /**
     * 订单号
     */
    @ExcelProperty("订单号")
    @Schema(description = "订单号")
    private String orderId;

    /**
     * 第三方订单号
     */
    @ExcelProperty("第三方订单号")
    @Schema(description = "第三方订单号")
    private String outOrderNo;

    /**
     * 备注
     */
    @ExcelProperty("备注")
    @Schema(description = "备注")
    private String notes;
}
